// import 'package:flutter/material.dart';
// import 'package:parrot/classes/llama_cpp_model.dart';
// import 'package:parrot/providers/session.dart';
// import 'package:parrot/ui/mobile/widgets/dialogs.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/n_predict_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/penalize_nl_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/mirostat_eta_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/mirostat_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/mirostat_tau_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/n_batch_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/n_ctx_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/n_threads_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/penalty_frequency_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/penalty_last_n_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/penalty_present_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/penalty_repeat_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/seed_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/temperature_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/tfs_z_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/top_k_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/top_p_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/parameter_widgets/typical_p_parameter.dart';
// import 'package:parrot/ui/mobile/widgets/dropdowns/format_dropdown.dart';
// import 'package:parrot/ui/mobile/widgets/session_busy_overlay.dart';
// import 'package:provider/provider.dart';
//
// class LlamaCppPage extends StatefulWidget {
//   const LlamaCppPage({super.key});
//
//   @override
//   State<LlamaCppPage> createState() => _LlamaCppPageState();
// }
//
// class _LlamaCppPageState extends State<LlamaCppPage> {
//   Session? cachedSession;
//
//   @override
//   void dispose() {
//     if(cachedSession!.model is LlamaCppModel) {
//       (cachedSession!.model as LlamaCppModel).init();
//     }
//     super.dispose();
//   }
//
//   @override
//   Widget build(BuildContext context) {
//     return Scaffold(
//       body: SessionBusyOverlay(
//         child: Consumer<Session>(
//           builder: (context, session, child) {
//             cachedSession = session;
//
//             return ListView(
//               children: [
//                 ListTile(
//                   title: Row(
//                     children: [
//                       const Expanded(
//                         child: Text("Model Path"),
//                       ),
//                       Expanded(
//                         flex: 2,
//                         child: Text(
//                           session.model.uri,
//                           textAlign: TextAlign.end,
//                         ),
//                       ),
//                     ],
//                   ),
//                 ),
//                 const SizedBox(height: 15.0),
//                 Align(
//                   alignment: Alignment.center, // Center the button horizontally
//                   child: FilledButton(
//                     onPressed: () {
//                       session.model.reset();
//                     },
//                     child: Text(
//                       "Reset",
//                     ),
//                   ),
//                 ),
//                 const SizedBox(height: 10.0),
//                 Row(
//                   mainAxisAlignment: MainAxisAlignment.center,
//                   children: [
//                     FilledButton(
//                       onPressed: () {
//                         storageOperationDialog(
//                           context,
//                           (session.model as LlamaCppModel).loadModel
//                         );
//                         session.notify();
//                       },
//                       child: Text(
//                         "Load GGUF",
//                       ),
//                     ),
//                     const SizedBox(width: 10.0),
//                     FilledButton(
//                       onPressed: () {
//                         session.model.resetUri();
//                         session.notify();
//                       },
//                       child: Text(
//                         "Unload GGUF",
//                       ),
//                     ),
//                   ],
//                 ),
//                 Divider(
//                   height: 20,
//                   indent: 10,
//                   endIndent: 10,
//                   color: Theme.of(context).colorScheme.primary,
//                 ),
//                 const FormatDropdown(),
//                 const PenalizeNlParameter(),
//                 const SeedParameter(),
//                 const TemperatureParameter(),
//                 const TopKParameter(),
//                 const TopPParameter(),
//                 const TfsZParameter(),
//                 const TypicalPParameter(),
//                 const PenaltyLastNParameter(),
//                 const PenaltyRepeatParameter(),
//                 const PenaltyFrequencyParameter(),
//                 const PenaltyPresentParameter(),
//                 const MirostatParameter(),
//                 const MirostatTauParameter(),
//                 const MirostatEtaParameter(),
//                 const NCtxParameter(),
//                 const NPredictParameter(),
//                 const NBatchParameter(),
//                 const NThreadsParameter(),
//               ]
//             );
//           },
//         ),
//       )
//     );
//   }
// }
//
//
